﻿Public Class OpcionsComboIdiomes
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboIdiomes

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboIdiomes()

        _llista.Add(New OpcioCombo(1, "es-ES"))
        _llista.Add(New OpcioCombo(2, "ca-ES"))
        _llista.Add(New OpcioCombo(5, "en-US"))
    End Sub
End Class

Public Class OpcionsDatesHoraris
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsDatesHoraris

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsDatesHoraris()

        Dim Data As DateTime = New Date(Now.Year - 1, Now.Month, 1, 0, 0, 0, 0, DateTimeKind.Utc)

        For i As Integer = 0 To 24
            _llista.Add(New OpcioCombo(Data, Data.ToString("MMMM yyyy"), Data))
            Data = DateAdd(DateInterval.Month, 1, Data)
        Next
    End Sub


End Class

Public Class OpcionsComboTipusPagaments
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboTipusPagaments

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboTipusPagaments()

    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        _llista.Clear()

        _llista.Add(New OpcioCombo(EnumTipusPagament.Cash, StringLibrary.Metalic))
        _llista.Add(New OpcioCombo(EnumTipusPagament.Targeta, StringLibrary.Targeta))

        Return Llista
    End Function
End Class

Public Class OpcionsComboTipusSexes
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboTipusSexes

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboTipusSexes()

    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        _llista.Clear()

        _llista.Add(New OpcioCombo(EnumTipusSexe.Home, StringLibrary.Home))
        _llista.Add(New OpcioCombo(EnumTipusSexe.Dona, StringLibrary.Dona))

        Return Llista
    End Function
End Class

Public Class OpcionsComboTipusDocuments
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboTipusDocuments

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboTipusDocuments()

    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        _llista.Clear()

        _llista.Add(New OpcioCombo(EnumTipusDocument.DNI, StringLibrary.DNI))
        _llista.Add(New OpcioCombo(EnumTipusDocument.Passaport, StringLibrary.Passaport))

        Return Llista
    End Function
End Class

Public Class OpcionsComboTipusPaisos
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboTipusPaisos

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboTipusPaisos()

    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        _llista.Clear()

        _llista.Add(New OpcioCombo(EnumTipusPais.Afganistan, StringLibrary.Afganistan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Albania, StringLibrary.Albania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Alemania, StringLibrary.Alemania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Andorra, StringLibrary.Andorra))
        _llista.Add(New OpcioCombo(EnumTipusPais.Angola, StringLibrary.Angola))
        _llista.Add(New OpcioCombo(EnumTipusPais.AntiguayBarbuda, StringLibrary.AntiguayBarbuda))
        _llista.Add(New OpcioCombo(EnumTipusPais.AntillasHolandesas, StringLibrary.AntillasHolandesas))
        _llista.Add(New OpcioCombo(EnumTipusPais.ArabiaSaudita, StringLibrary.ArabiaSaudita))
        _llista.Add(New OpcioCombo(EnumTipusPais.Argelia, StringLibrary.Argelia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Argentina, StringLibrary.Argentina))
        _llista.Add(New OpcioCombo(EnumTipusPais.Armenia, StringLibrary.Armenia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Aruba, StringLibrary.Aruba))
        _llista.Add(New OpcioCombo(EnumTipusPais.Australia, StringLibrary.Australia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Austria, StringLibrary.Austria))
        _llista.Add(New OpcioCombo(EnumTipusPais.Azerbaijan, StringLibrary.Azerbaijan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bahamas, StringLibrary.Bahamas))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bahrain, StringLibrary.Bahrain))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bangladesh, StringLibrary.Bangladesh))
        _llista.Add(New OpcioCombo(EnumTipusPais.Barbados, StringLibrary.Barbados))
        _llista.Add(New OpcioCombo(EnumTipusPais.Belgica, StringLibrary.Belgica))
        _llista.Add(New OpcioCombo(EnumTipusPais.Belice, StringLibrary.Belice))
        _llista.Add(New OpcioCombo(EnumTipusPais.Benin, StringLibrary.Benin))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bermudas, StringLibrary.Bermudas))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bielorrusia, StringLibrary.Bielorrusia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bolivia, StringLibrary.Bolivia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bosnia, StringLibrary.Bosnia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Botswana, StringLibrary.Botswana))
        _llista.Add(New OpcioCombo(EnumTipusPais.Brasil, StringLibrary.Brasil))
        _llista.Add(New OpcioCombo(EnumTipusPais.BruneiDarussulam, StringLibrary.BruneiDarussulam))
        _llista.Add(New OpcioCombo(EnumTipusPais.Bulgaria, StringLibrary.Bulgaria))
        _llista.Add(New OpcioCombo(EnumTipusPais.BurkinaFaso, StringLibrary.BurkinaFaso))
        _llista.Add(New OpcioCombo(EnumTipusPais.Burundi, StringLibrary.Burundi))
        _llista.Add(New OpcioCombo(EnumTipusPais.Butan, StringLibrary.Butan))
        _llista.Add(New OpcioCombo(EnumTipusPais.CaboVerde, StringLibrary.CaboVerde))
        _llista.Add(New OpcioCombo(EnumTipusPais.Camboya, StringLibrary.Camboya))
        _llista.Add(New OpcioCombo(EnumTipusPais.Camerun, StringLibrary.Camerun))
        _llista.Add(New OpcioCombo(EnumTipusPais.Canada, StringLibrary.Canada))
        _llista.Add(New OpcioCombo(EnumTipusPais.Cazastan, StringLibrary.Cazastan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Chad, StringLibrary.Chad))
        _llista.Add(New OpcioCombo(EnumTipusPais.Chile, StringLibrary.Chile))
        _llista.Add(New OpcioCombo(EnumTipusPais.China, StringLibrary.China))
        _llista.Add(New OpcioCombo(EnumTipusPais.Chipre, StringLibrary.Chipre))
        _llista.Add(New OpcioCombo(EnumTipusPais.Colombia, StringLibrary.Colombia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Comoros, StringLibrary.Comoros))
        _llista.Add(New OpcioCombo(EnumTipusPais.Congo, StringLibrary.Congo))
        _llista.Add(New OpcioCombo(EnumTipusPais.CoreadelNorte, StringLibrary.CoreadelNorte))
        _llista.Add(New OpcioCombo(EnumTipusPais.CoreadelSur, StringLibrary.CoreadelSur))
        _llista.Add(New OpcioCombo(EnumTipusPais.CostadeMarfil, StringLibrary.CostadeMarfil))
        _llista.Add(New OpcioCombo(EnumTipusPais.CostaRica, StringLibrary.CostaRica))
        _llista.Add(New OpcioCombo(EnumTipusPais.Croasia, StringLibrary.Croasia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Cuba, StringLibrary.Cuba))
        _llista.Add(New OpcioCombo(EnumTipusPais.Dinamarca, StringLibrary.Dinamarca))
        _llista.Add(New OpcioCombo(EnumTipusPais.Djibouti, StringLibrary.Djibouti))
        _llista.Add(New OpcioCombo(EnumTipusPais.Dominica, StringLibrary.Dominica))
        _llista.Add(New OpcioCombo(EnumTipusPais.Dubai, StringLibrary.Dubai))
        _llista.Add(New OpcioCombo(EnumTipusPais.Ecuador, StringLibrary.Ecuador))
        _llista.Add(New OpcioCombo(EnumTipusPais.Egipto, StringLibrary.Egipto))
        _llista.Add(New OpcioCombo(EnumTipusPais.ElSalvador, StringLibrary.ElSalvador))
        _llista.Add(New OpcioCombo(EnumTipusPais.EmiratosArabesUnidos, StringLibrary.EmiratosArabesUnidos))
        _llista.Add(New OpcioCombo(EnumTipusPais.Eritrea, StringLibrary.Eritrea))
        _llista.Add(New OpcioCombo(EnumTipusPais.Eslovaquia, StringLibrary.Eslovaquia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Eslovenia, StringLibrary.Eslovenia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Espanya, StringLibrary.Espanya))
        _llista.Add(New OpcioCombo(EnumTipusPais.EstadosUnidos, StringLibrary.EstadosUnidos))
        _llista.Add(New OpcioCombo(EnumTipusPais.Estonia, StringLibrary.Estonia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Etiopia, StringLibrary.Etiopia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Fiji, StringLibrary.Fiji))
        _llista.Add(New OpcioCombo(EnumTipusPais.Filipinas, StringLibrary.Filipinas))
        _llista.Add(New OpcioCombo(EnumTipusPais.Finlandia, StringLibrary.Finlandia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Francia, StringLibrary.Francia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Gabon, StringLibrary.Gabon))
        _llista.Add(New OpcioCombo(EnumTipusPais.Gambia, StringLibrary.Gambia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Georgia, StringLibrary.Georgia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Ghana, StringLibrary.Ghana))
        _llista.Add(New OpcioCombo(EnumTipusPais.Granada, StringLibrary.Granada))
        _llista.Add(New OpcioCombo(EnumTipusPais.Grecia, StringLibrary.Grecia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Groenlandia, StringLibrary.Groenlandia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Guadalupe, StringLibrary.Guadalupe))
        _llista.Add(New OpcioCombo(EnumTipusPais.Guam, StringLibrary.Guam))
        _llista.Add(New OpcioCombo(EnumTipusPais.Guatemala, StringLibrary.Guatemala))
        _llista.Add(New OpcioCombo(EnumTipusPais.GuayanaFrancesa, StringLibrary.GuayanaFrancesa))
        _llista.Add(New OpcioCombo(EnumTipusPais.Guerney, StringLibrary.Guerney))
        _llista.Add(New OpcioCombo(EnumTipusPais.Guinea, StringLibrary.Guinea))
        _llista.Add(New OpcioCombo(EnumTipusPais.GuineaBissau, StringLibrary.GuineaBissau))
        _llista.Add(New OpcioCombo(EnumTipusPais.GuineaEquatorial, StringLibrary.GuineaEquatorial))
        _llista.Add(New OpcioCombo(EnumTipusPais.Guyana, StringLibrary.Guyana))
        _llista.Add(New OpcioCombo(EnumTipusPais.Haiti, StringLibrary.Haiti))
        _llista.Add(New OpcioCombo(EnumTipusPais.Holanda, StringLibrary.Holanda))
        _llista.Add(New OpcioCombo(EnumTipusPais.Honduras, StringLibrary.Honduras))
        _llista.Add(New OpcioCombo(EnumTipusPais.HongKong, StringLibrary.HongKong))
        _llista.Add(New OpcioCombo(EnumTipusPais.Hungria, StringLibrary.Hungria))
        _llista.Add(New OpcioCombo(EnumTipusPais.India, StringLibrary.India))
        _llista.Add(New OpcioCombo(EnumTipusPais.Indonesia, StringLibrary.Indonesia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Irak, StringLibrary.Irak))
        _llista.Add(New OpcioCombo(EnumTipusPais.Iran, StringLibrary.Iran))
        _llista.Add(New OpcioCombo(EnumTipusPais.Irlanda, StringLibrary.Irlanda))
        _llista.Add(New OpcioCombo(EnumTipusPais.Islandia, StringLibrary.Islandia))
        _llista.Add(New OpcioCombo(EnumTipusPais.IslasCaiman, StringLibrary.IslasCaiman))
        _llista.Add(New OpcioCombo(EnumTipusPais.IslasFaroe, StringLibrary.IslasFaroe))
        _llista.Add(New OpcioCombo(EnumTipusPais.IslasMalvinas, StringLibrary.IslasMalvinas))
        _llista.Add(New OpcioCombo(EnumTipusPais.IslasMarshall, StringLibrary.IslasMarshall))
        _llista.Add(New OpcioCombo(EnumTipusPais.IslasSolomon, StringLibrary.IslasSolomon))
        _llista.Add(New OpcioCombo(EnumTipusPais.IslasVirgenesUS, StringLibrary.IslasVirgenesUS))
        _llista.Add(New OpcioCombo(EnumTipusPais.Israel, StringLibrary.Israel))
        _llista.Add(New OpcioCombo(EnumTipusPais.Italia, StringLibrary.Italia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Jamaica, StringLibrary.Jamaica))
        _llista.Add(New OpcioCombo(EnumTipusPais.Japon, StringLibrary.Japon))
        _llista.Add(New OpcioCombo(EnumTipusPais.Jersey, StringLibrary.Jersey))
        _llista.Add(New OpcioCombo(EnumTipusPais.Jordania, StringLibrary.Jordania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Kazakhstan, StringLibrary.Kazakhstan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Kenia, StringLibrary.Kenia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Kiribati, StringLibrary.Kiribati))
        _llista.Add(New OpcioCombo(EnumTipusPais.Kosovo, StringLibrary.Kosovo))
        _llista.Add(New OpcioCombo(EnumTipusPais.Kuwait, StringLibrary.Kuwait))
        _llista.Add(New OpcioCombo(EnumTipusPais.Kyrgyzstan, StringLibrary.Kyrgyzstan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Laos, StringLibrary.Laos))
        _llista.Add(New OpcioCombo(EnumTipusPais.Lesotho, StringLibrary.Lesotho))
        _llista.Add(New OpcioCombo(EnumTipusPais.Letonia, StringLibrary.Letonia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Libano, StringLibrary.Libano))
        _llista.Add(New OpcioCombo(EnumTipusPais.Liberia, StringLibrary.Liberia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Libia, StringLibrary.Libia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Liechtenstein, StringLibrary.Liechtenstein))
        _llista.Add(New OpcioCombo(EnumTipusPais.Lituania, StringLibrary.Lituania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Luxemburgo, StringLibrary.Luxemburgo))
        _llista.Add(New OpcioCombo(EnumTipusPais.Macao, StringLibrary.Macao))
        _llista.Add(New OpcioCombo(EnumTipusPais.Macedionia, StringLibrary.Macedionia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Madagascar, StringLibrary.Madagascar))
        _llista.Add(New OpcioCombo(EnumTipusPais.Malasia, StringLibrary.Malasia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Malawi, StringLibrary.Malawi))
        _llista.Add(New OpcioCombo(EnumTipusPais.Maldivas, StringLibrary.Maldivas))
        _llista.Add(New OpcioCombo(EnumTipusPais.Mali, StringLibrary.Mali))
        _llista.Add(New OpcioCombo(EnumTipusPais.Malta, StringLibrary.Malta))
        _llista.Add(New OpcioCombo(EnumTipusPais.Marruecos, StringLibrary.Marruecos))
        _llista.Add(New OpcioCombo(EnumTipusPais.Martinica, StringLibrary.Martinica))
        _llista.Add(New OpcioCombo(EnumTipusPais.Mauricio, StringLibrary.Mauricio))
        _llista.Add(New OpcioCombo(EnumTipusPais.Mauritania, StringLibrary.Mauritania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Mexico, StringLibrary.Mexico))
        _llista.Add(New OpcioCombo(EnumTipusPais.Micronesia, StringLibrary.Micronesia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Moldova, StringLibrary.Moldova))
        _llista.Add(New OpcioCombo(EnumTipusPais.Monaco, StringLibrary.Monaco))
        _llista.Add(New OpcioCombo(EnumTipusPais.Mongolia, StringLibrary.Mongolia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Montenegro, StringLibrary.Montenegro))
        _llista.Add(New OpcioCombo(EnumTipusPais.Mozambique, StringLibrary.Mozambique))
        _llista.Add(New OpcioCombo(EnumTipusPais.MyanmarBurma, StringLibrary.MyanmarBurma))
        _llista.Add(New OpcioCombo(EnumTipusPais.Namibia, StringLibrary.Namibia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Nepal, StringLibrary.Nepal))
        _llista.Add(New OpcioCombo(EnumTipusPais.Nicaragua, StringLibrary.Nicaragua))
        _llista.Add(New OpcioCombo(EnumTipusPais.Niger, StringLibrary.Niger))
        _llista.Add(New OpcioCombo(EnumTipusPais.Nigeria, StringLibrary.Nigeria))
        _llista.Add(New OpcioCombo(EnumTipusPais.Noruega, StringLibrary.Noruega))
        _llista.Add(New OpcioCombo(EnumTipusPais.NuevaCaledonia, StringLibrary.NuevaCaledonia))
        _llista.Add(New OpcioCombo(EnumTipusPais.NuevaZelanda, StringLibrary.NuevaZelanda))
        _llista.Add(New OpcioCombo(EnumTipusPais.Oman, StringLibrary.Oman))
        _llista.Add(New OpcioCombo(EnumTipusPais.Otros, StringLibrary.Otros))
        _llista.Add(New OpcioCombo(EnumTipusPais.Pakistan, StringLibrary.Pakistan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Palestina, StringLibrary.Palestina))
        _llista.Add(New OpcioCombo(EnumTipusPais.Panama, StringLibrary.Panama))
        _llista.Add(New OpcioCombo(EnumTipusPais.PapuaNuevaGuinea, StringLibrary.PapuaNuevaGuinea))
        _llista.Add(New OpcioCombo(EnumTipusPais.Paraguay, StringLibrary.Paraguay))
        _llista.Add(New OpcioCombo(EnumTipusPais.Peru, StringLibrary.Peru))
        _llista.Add(New OpcioCombo(EnumTipusPais.PolinesiaFrancesa, StringLibrary.PolinesiaFrancesa))
        _llista.Add(New OpcioCombo(EnumTipusPais.Polonia, StringLibrary.Polonia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Portugal, StringLibrary.Portugal))
        _llista.Add(New OpcioCombo(EnumTipusPais.PuertoRico, StringLibrary.PuertoRico))
        _llista.Add(New OpcioCombo(EnumTipusPais.Qatar, StringLibrary.Qatar))
        _llista.Add(New OpcioCombo(EnumTipusPais.ReinoUnido, StringLibrary.ReinoUnido))
        _llista.Add(New OpcioCombo(EnumTipusPais.RepublicaCentroafricana, StringLibrary.RepublicaCentroafricana))
        _llista.Add(New OpcioCombo(EnumTipusPais.RepublicaCheca, StringLibrary.RepublicaCheca))
        _llista.Add(New OpcioCombo(EnumTipusPais.RepublicaDemocraticadelCongo, StringLibrary.RepublicaDemocraticadelCongo))
        _llista.Add(New OpcioCombo(EnumTipusPais.RepublicaDominicana, StringLibrary.RepublicaDominicana))
        _llista.Add(New OpcioCombo(EnumTipusPais.RepublicaEslovaca, StringLibrary.RepublicaEslovaca))
        _llista.Add(New OpcioCombo(EnumTipusPais.Reunion, StringLibrary.Reunion))
        _llista.Add(New OpcioCombo(EnumTipusPais.Ruanda, StringLibrary.Ruanda))
        _llista.Add(New OpcioCombo(EnumTipusPais.Rumania, StringLibrary.Rumania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Rusia, StringLibrary.Rusia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Sahara, StringLibrary.Sahara))
        _llista.Add(New OpcioCombo(EnumTipusPais.Samoa, StringLibrary.Samoa))
        _llista.Add(New OpcioCombo(EnumTipusPais.SanCristobalNevisStKitts, StringLibrary.SanCristobalNevisStKitts))
        _llista.Add(New OpcioCombo(EnumTipusPais.SanMarino, StringLibrary.SanMarino))
        _llista.Add(New OpcioCombo(EnumTipusPais.SantaLucia, StringLibrary.SantaLucia))
        _llista.Add(New OpcioCombo(EnumTipusPais.SantaSedeVaticano, StringLibrary.SantaSedeVaticano))
        _llista.Add(New OpcioCombo(EnumTipusPais.SanVincenteylasGranadinas, StringLibrary.SanVincenteylasGranadinas))
        _llista.Add(New OpcioCombo(EnumTipusPais.SaoTomePrincipe, StringLibrary.SaoTomePrincipe))
        _llista.Add(New OpcioCombo(EnumTipusPais.Senegal, StringLibrary.Senegal))
        _llista.Add(New OpcioCombo(EnumTipusPais.Serbia, StringLibrary.Serbia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Seychelles, StringLibrary.Seychelles))
        _llista.Add(New OpcioCombo(EnumTipusPais.SierraLeona, StringLibrary.SierraLeona))
        _llista.Add(New OpcioCombo(EnumTipusPais.Singapur, StringLibrary.Singapur))
        _llista.Add(New OpcioCombo(EnumTipusPais.Siria, StringLibrary.Siria))
        _llista.Add(New OpcioCombo(EnumTipusPais.Slovakia, StringLibrary.Slovakia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Somalia, StringLibrary.Somalia))
        _llista.Add(New OpcioCombo(EnumTipusPais.SriLankaCeilan, StringLibrary.SriLankaCeilan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Sudafrica, StringLibrary.Sudafrica))
        _llista.Add(New OpcioCombo(EnumTipusPais.Sudan, StringLibrary.Sudan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Suecia, StringLibrary.Suecia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Suiza, StringLibrary.Suiza))
        _llista.Add(New OpcioCombo(EnumTipusPais.Surinam, StringLibrary.Surinam))
        _llista.Add(New OpcioCombo(EnumTipusPais.Swaziland, StringLibrary.Swaziland))
        _llista.Add(New OpcioCombo(EnumTipusPais.Tailandia, StringLibrary.Tailandia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Taiwan, StringLibrary.Taiwan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Tajikistan, StringLibrary.Tajikistan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Tanzania, StringLibrary.Tanzania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Tibet, StringLibrary.Tibet))
        _llista.Add(New OpcioCombo(EnumTipusPais.TimorOriental, StringLibrary.TimorOriental))
        _llista.Add(New OpcioCombo(EnumTipusPais.Togo, StringLibrary.Togo))
        _llista.Add(New OpcioCombo(EnumTipusPais.Tonga, StringLibrary.Tonga))
        _llista.Add(New OpcioCombo(EnumTipusPais.TrinidadTobago, StringLibrary.TrinidadTobago))
        _llista.Add(New OpcioCombo(EnumTipusPais.Tunicia, StringLibrary.Tunicia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Turkmenistan, StringLibrary.Turkmenistan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Turquia, StringLibrary.Turquia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Ucrania, StringLibrary.Ucrania))
        _llista.Add(New OpcioCombo(EnumTipusPais.Uganda, StringLibrary.Uganda))
        _llista.Add(New OpcioCombo(EnumTipusPais.Uruguay, StringLibrary.Uruguay))
        _llista.Add(New OpcioCombo(EnumTipusPais.Uzbekistan, StringLibrary.Uzbekistan))
        _llista.Add(New OpcioCombo(EnumTipusPais.Vanuatu, StringLibrary.Vanuatu))
        _llista.Add(New OpcioCombo(EnumTipusPais.Vaticano, StringLibrary.Vaticano))
        _llista.Add(New OpcioCombo(EnumTipusPais.Venezuela, StringLibrary.Venezuela))
        _llista.Add(New OpcioCombo(EnumTipusPais.Vietnam, StringLibrary.Vietnam))
        _llista.Add(New OpcioCombo(EnumTipusPais.Yemen, StringLibrary.Yemen))
        _llista.Add(New OpcioCombo(EnumTipusPais.Yugoslavia, StringLibrary.Yugoslavia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Zaire, StringLibrary.Zaire))
        _llista.Add(New OpcioCombo(EnumTipusPais.Zambia, StringLibrary.Zambia))
        _llista.Add(New OpcioCombo(EnumTipusPais.Zimbabwe, StringLibrary.Zimbabwe))


        Return Llista
    End Function
End Class

Public Class OpcionsComboEstatHostal
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboEstatHostal

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboEstatHostal()

        _llista.Add(New OpcioCombo(EnumEstatHostal.Indefinit, " "))
        _llista.Add(New OpcioCombo(EnumEstatHostal.Bo, StringLibrary.Bueno))
        _llista.Add(New OpcioCombo(EnumEstatHostal.Dolent, StringLibrary.Malo))
    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Return Llista
    End Function
End Class

Public Class OpcionsComboSiNo
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboSiNo

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboSiNo()

        _llista.Add(New OpcioCombo(-1, " "))
        _llista.Add(New OpcioCombo(1, StringLibrary.Si))
        _llista.Add(New OpcioCombo(0, StringLibrary.No))
    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Return Llista
    End Function
End Class

Public Class OpcionsComboTipusDespesaIngres
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboTipusDespesaIngres

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboTipusDespesaIngres()

    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        _llista.Clear()

        _llista.Add(New OpcioCombo(EnumTipusDespesaIngres.Despesa, StringLibrary.Gastos))
        _llista.Add(New OpcioCombo(EnumTipusDespesaIngres.Ingres, StringLibrary.Ingressos))

        Return Llista
    End Function
End Class

Public Class OpcionsComboRols
    Inherits System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)

    Private Shared _llista As OpcionsComboRols

    Public Shared ReadOnly Property Llista() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        Get
            Return _llista
        End Get
    End Property

    Shared Sub New()

        _llista = New OpcionsComboRols()

    End Sub

    Public Shared Function GetOpcions() As System.Collections.ObjectModel.ObservableCollection(Of OpcioCombo)
        _llista.Clear()

        _llista.Add(New OpcioCombo(EnumTipusUsuari.Administrador, StringLibrary.Administrador))
        _llista.Add(New OpcioCombo(EnumTipusUsuari.Manager, StringLibrary.Manager))
        _llista.Add(New OpcioCombo(EnumTipusUsuari.Recepcionista, StringLibrary.Recepcionista))
        _llista.Add(New OpcioCombo(EnumTipusUsuari.Neteja, StringLibrary.Neteja))

        Return Llista
    End Function


End Class

Public Class OpcioCombo
    Implements System.ComponentModel.INotifyPropertyChanged

    Public Overrides Function Equals(ByVal obj As Object) As Boolean
        If TypeOf obj Is OpcioCombo Then
            Dim ObjOpcioCombo As OpcioCombo = DirectCast(obj, OpcioCombo)

            If ObjOpcioCombo.Id = Id AndAlso ObjOpcioCombo.Nom = Nom AndAlso (ObjOpcioCombo.Objecte Is Nothing OrElse ObjOpcioCombo.Objecte Is Objecte) Then
                Return True
            Else
                Return False
            End If
        Else
            Return False
        End If
    End Function

    Private _id As String
    Public Property Id() As String
        Get
            Return _id
        End Get
        Set(ByVal value As String)
            _id = value
            RaiseEvent PropertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs("Id"))
        End Set
    End Property


    Private _nom As String
    Public Property Nom() As String
        Get
            Return _nom
        End Get
        Set(ByVal value As String)
            _nom = value
            RaiseEvent PropertyChanged(Me, New System.ComponentModel.PropertyChangedEventArgs("Nom"))
        End Set
    End Property

    Private _Objecte As Object
    Public Property Objecte() As Object
        Get
            Return _Objecte
        End Get
        Set(ByVal value As Object)
            _Objecte = value
        End Set
    End Property

    Sub New(ByVal id As String, ByVal nom As String)
        Me.Id = id
        Me.Nom = nom
    End Sub

    Sub New(ByVal id As String, ByVal nom As String, ByVal Objecte As Object)
        Me.New(id, nom)
        Me.Objecte = Objecte
    End Sub

    Public Event PropertyChanged(ByVal sender As Object, ByVal e As System.ComponentModel.PropertyChangedEventArgs) Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged

    'Public Event PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs) Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged
End Class
